using System;
using TenantManagementService.Tenants;

namespace TenantManagementService.Tenants
{
    /// <summary>
    /// 文件下载DTO
    /// </summary>
    public class FileDto
    {
        /// <summary>
        /// 文件名
        /// </summary>
        public string FileName { get; set; } = string.Empty;

        /// <summary>
        /// 文件内容
        /// </summary>
        public byte[] Content { get; set; } = Array.Empty<byte>();

        /// <summary>
        /// MIME类型
        /// </summary>
        public string ContentType { get; set; } = "application/octet-stream";

        /// <summary>
        /// 无参构造函数
        /// </summary>
        public FileDto()
        {
        }

        /// <summary>
        /// 带参数的构造函数
        /// </summary>
        /// <param name="fileName">文件名</param>
        /// <param name="contentType">MIME类型</param>
        /// <param name="content">文件内容</param>
        public FileDto(string fileName, string contentType, byte[] content)
        {
            FileName = fileName;
            ContentType = contentType;
            Content = content;
        }
    }

    /// <summary>
    /// 限制类型枚举
    /// </summary>
    public enum LimitType
    {
        /// <summary>
        /// 用户数量
        /// </summary>
        UserCount = 1,

        /// <summary>
        /// 存储空间
        /// </summary>
        Storage = 2,

        /// <summary>
        /// API调用次数
        /// </summary>
        ApiCalls = 3,

        /// <summary>
        /// 带宽
        /// </summary>
        Bandwidth = 4
    }

    
    }